
<!DOCTYPE html
  PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="zh_cn">
   <head>
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
   
      <title>4.22.&nbsp;&#35206;&#30422;&#20869;&#24314;&#30340; Javascript &#26041;&#27861; [&#28145;&#20837;&#27973;&#20986; Greasemonkey]</title>
      <link rel="shortcut icon" href="/favicon.ico">
      <link rel="stylesheet" href="../css/dig.css" type="text/css">
      <meta http-equiv="Link" content='&lt;../css/modern.css&gt;; type="text/css"; rel=stylesheet, &lt;../css/empty.css&gt;; type="text/css";
      rel=stylesheet'>
      <link rev="made" href="mailto:mark@diveintomark.org">
      <meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
      <meta name="keywords" content="Firefox, Greasemonkey, Javascript, user script, userscript">
      <link rel="start" href="../toc/index.html" title="&#28145;&#20837;&#27973;&#20986; Greasemonkey">
      <link rel="up" href="index.html" title="&#31532;&nbsp;4&nbsp;&#31456;&nbsp;&#20844;&#20849;&#27169;&#24335;">
      <link rel="prev" href="intercept-clicks.html" title="4.21.&nbsp;&#20440;&#33719;&#29992;&#25143;&#28857;&#20987;">
      <link rel="next" href="parse-xml.html" title="4.23.&nbsp;&#35299;&#26512; XML">
   </head>
   <body id="diveintogreasemonkey-org" class="pattern-overridemethod">
      <div class="z" id="intro">
         <div class="sectionInner">
            <div class="sectionInner2">
               <div class="s">
                  <h1><a href="/" accesskey="1">&#28145;&#20837;&#27973;&#20986; Greasemonkey</a></h1>
                  <p>&#25945;&#32769;&#32593;&#32476;&#23398;&#26032;&#25226;&#25103;</p>
               </div>
               <div class="s">
                  <ul>
                     <li><a href="../">&#36215;&#22987;&#39029;</a> &middot; 
                     </li>
                     <li><a href="../toc/">&#30446;&#24405;</a> &middot; 
                     </li>
                     <li><a href="../download/">&#19979;&#36733;</a> &middot; 
                     </li>
                     <li><a href="http://greasemonkey.mozdev.org/">&#31435;&#21363;&#19979;&#36733; Greasemonkey</a></li>
                  </ul>
               </div>
            </div>
         </div>
      </div>
      <div id="main">
         <div id="mainInner">
            <p id="breadcrumb">&#24744;&#30340;&#20301;&#32622;&#65306;<a href="../">&#36215;&#22987;&#39029;</a> &#8594; <a href="../toc/index.html">&#30446;&#24405;</a> &#8594; <a href="index.html">&#20844;&#20849;&#27169;&#24335;</a> &#8594; <span class="thispage">&#35206;&#30422;&#20869;&#24314;&#30340; Javascript &#26041;&#27861;</span></p>
            <div class="section" lang="zh_cn">
               <div class="titlepage">
                  <div>
                     <div>
                        <h2 class="title"><a name="pattern.overridemethod" class="skip" href="#pattern.overridemethod" title="link to this section"><img src="../images/permalink.gif" alt="[link]" title="link to this section" width="8" height="9"></a> 4.22.&nbsp;&#35206;&#30422;&#20869;&#24314;&#30340; Javascript &#26041;&#27861;
                        </h2>
                     </div>
                     <div>
                        <div class="abstract">
                           <h3 class="title"></h3>
                           <p>&#24744;&#21487;&#20197;&#29992; <code class="property">prototype</code> &#23646;&#24615; &#35206;&#30422;&#21407;&#26377;&#30340;&#23545;&#35937;&#26041;&#27861;&#12290;
                           </p>
                        </div>
                     </div>
                  </div>
               </div>
               <div class="example"><a name="example.pattern.prototype" class="skip" href="#example.pattern.prototype" title="link to this example"><img src="../images/permalink.gif" alt="[link]" title="link to this example" width="8" height="9"></a> 
                  <h3 class="title">&#20363;&nbsp;4.26.&nbsp;&#24403;&#34920;&#21333;&#25552;&#20132;&#26102;&#20570;&#28857;&#20107;</h3><pre class="programlisting ">function newsubmit(event) {
var target = event ? event.target : this;

// &#22312;&#36825;&#37324;&#23450;&#20041;&#24819;&#20570;&#30340;&#25805;&#20316;
alert('Submitting form to ' + target.action);

// &#35843;&#29992;&#30495;&#27491;&#30340;&#25552;&#20132;&#20989;&#25968;
this._submit();
}

// &#25429;&#33719;&#25152;&#26377;&#34920;&#21333;&#30340; onsubmit &#20107;&#20214;
window.addEventListener('submit', newsubmit, true);

// &#22914;&#26524;&#33050;&#26412;&#35843;&#29992; someForm.submit()&#65292;onsubmit &#20107;&#20214;&#19981;&#20250;&#21457;&#29983;&#65292;
// &#25152;&#20197;&#25105;&#20204;&#38656;&#35201;&#37325;&#26032;&#23450;&#20041; HTMLFormElement &#31867;&#30340; submit &#26041;&#27861;&#12290;
HTMLFormElement.prototype._submit = HTMLFormElement.prototype.submit;
HTMLFormElement.prototype.submit = newsubmit;</pre><p>&#22312;&#36825;&#37324;&#20570;&#20102;&#20004;&#20214;&#20107;&#12290;&#39318;&#20808;&#65292;&#25105;&#21152;&#20837;&#20102;&#19968;&#20010;&#29992;&#26469;&#25429;&#33719; <code class="systemitem">submit</code> &#20107;&#20214;&#30340;&#30417;&#21548;&#20989;&#25968;&#12290;&#24403;&#29992;&#25143;&#28857;&#20987;&#34920;&#21333;&#30340;&#25552;&#20132;&#25353;&#38062;&#26102;&#65292;&#35302;&#21457; <code class="systemitem">submit</code> &#20107;&#20214;&#12290;&#28982;&#32780;&#65292;&#24403;&#21035;&#30340;&#33050;&#26412;&#35843;&#29992;&#34920;&#21333;&#30340; <code class="methodname">submit()</code> &#26041;&#27861;&#26102;&#65292;&#24182;&#19981;&#20250;&#35302;&#21457; <code class="systemitem">submit</code> &#20107;&#20214;&#12290; &#25152;&#20197;&#65292;&#25105;&#20570;&#30340;&#31532;&#20108;&#20214;&#20107;&#26159;&#35206;&#30422; <code class="classname">HTMLFormElement</code> &#31867;&#30340; <code class="methodname">submit</code> &#26041;&#27861;&#12290;
                  </p>
                  <p>&#20294;&#26159;&#31561;&#31561;&#65292;&#36824;&#26377;&#20960;&#28857;&#38656;&#35201;&#35828;&#26126;&#12290;&#20107;&#20214;&#30417;&#21548;&#20989;&#25968;&#21644;&#37325;&#26032;&#23450;&#20041;&#30340;&#26041;&#27861;&#37117;&#25351;&#21521;&#21516;&#19968;&#20010;&#20989;&#25968;&#65292;<code class="function">newsubmit</code>&#12290;&#22914;&#26524; <code class="function">newsubmit</code> &#34987;&#19968;&#20010; <code class="systemitem">submit</code> &#20107;&#20214;&#35843;&#29992;&#65292;<code class="varname">event</code>  &#21442;&#25968;&#23558;&#20250;&#34987;&#21253;&#21547;&#22312;&#20107;&#20214;&#23545;&#35937;&#20013;&#65292;&#36825;&#20010;&#20107;&#20214;&#23545;&#35937;&#21253;&#21547;&#20107;&#20214;&#30340;&#20449;&#24687;&#65288;&#20363;&#22914;&#65292;<code class="property">event.target</code> &#26159;&#34987;&#25552;&#20132;&#30340;&#34920;&#21333;&#65289;&#12290;&#28982;&#32780;&#65292;&#22914;&#26524;&#33050;&#26412;&#25163;&#21160;&#35843;&#29992;&#20102; <code class="methodname">submit</code> &#26041;&#27861;&#65292;<code class="varname">event</code> &#20107;&#20214;&#20250;&#34987;&#24573;&#30053;&#25481;&#65292;&#20294;&#26159;&#20840;&#23616;&#21464;&#37327; <code class="varname">this</code> &#23558;&#20250;&#25351;&#21521;&#36825;&#20010;&#34920;&#21333;&#12290;&#22240;&#27492;&#65292;&#22312;&#25105;&#30340; <code class="function">newsubmit</code> &#20989;&#25968;&#20013;&#65292;&#25105;&#20808;&#21028;&#26029; <code class="varname">event</code> &#26159;&#21542;&#20026;&#31354;&#65307;&#22914;&#26524;&#20026;&#31354;&#65292;&#23601;&#29992; <code class="varname">this</code> &#26469;&#24471;&#21040;&#36825;&#20010;&#34920;&#21333;&#12290;
                  </p>
               </div>
               <div class="tip">
                  <table class="admon" summary="">
                     <tr>
                        <td class="admonicon"><a href="../appendix/tips.html" title="&#25216;&#24039;&#28165;&#21333;"><img alt="[&#25552;&#31034;]" src="../images/tip.png" width="24" height="24" title=""></a></td>
                        <td class="admontext">
                           <p>&#27491;&#24120;&#24773;&#20917;&#19979;&#65292;&#24403;&#29992;&#25143;&#25552;&#20132;&#19968;&#20010;&#34920;&#21333;&#26102;&#65292;&#20363;&#22914;&#65292;&#28857;&#20987;&#34920;&#21333;&#20013;&#30340; <span><strong class="guibutton">&#25552;&#20132;</strong></span> &#25353;&#38062;&#25110;&#32773;&#25353; <strong class="userinput"><code>&#22238;&#36710;&#38190;</code></strong>&#65289;&#65292;&#37117;&#20250;&#35302;&#21457; <code class="systemitem">submit</code> &#20107;&#20214;&#12290;&#20294;&#26159;&#65292;&#24403;&#33050;&#26412;&#35843;&#29992; <code class="function">aForm.submit()</code> &#25552;&#20132;&#34920;&#21333;&#26102;&#65292;&#21364;<span class="emphasis"><em>&#19981;&#20250;</em></span>&#35302;&#21457;  <code class="systemitem">submit</code> &#20107;&#20214;&#12290;&#22240;&#27492;&#65292;&#24744;&#24517;&#39035;&#20570;&#20004;&#20214;&#20107;&#26469;&#25429;&#33719;&#34920;&#21333;&#30340;&#25552;&#20132;&#20107;&#20214;&#65306;&#32473; <code class="systemitem">submit</code> &#20107;&#20214;&#22686;&#21152;&#20107;&#20214;&#30417;&#21548;&#65292;<span class="emphasis"><em>&#24182;&#19988;</em></span>&#20462;&#25913; <code class="classname">HTMLFormElement</code> &#31867;&#30340;&#21407;&#22411;&#26469;&#37325;&#23450;&#21521; <code class="methodname">submit()</code> &#26041;&#27861;&#21040;&#24744;&#30340;&#33258;&#23450;&#20041;&#20989;&#25968;&#19978;&#12290;
                           </p>
                        </td>
                     </tr>
                  </table>
               </div>
               <div class="furtherreading"><a href="../appendix/furtherreading.html" title="&#xA;&#8220;&#21442;&#32771;&#36164;&#26009;&#8221;&#38142;&#25509;&#28165;&#21333;">
                     <h3>&#21442;&#32771;&#36164;&#26009;</h3></a><ul>
                     <li>
                        <a href="http://www.quirksmode.org/js/events_compinfo.html">Javascript &#20107;&#20214;&#20860;&#23481;&#24615;&#34920;</a>
                        
                     </li>
                     <li>
                        <a href="http://www.mozilla.org/docs/dom/mozilla/protodoc.html">Mozilla &#20013;&#30340; Javascript-DOM &#21407;&#22411;</a>
                        
                     </li>
                     <li>
                        <a href="http://www.mozilla.org/docs/dom/domref/examples.html#999002">&#26174;&#31034;&#20107;&#20214;&#23545;&#35937;&#24120;&#37327;</a>
                        
                     </li>
                  </ul>
               </div>
            </div>
            <div style="float: left">&#8592;&nbsp;<a class="NavigationArrow" href="intercept-clicks.html">&#20440;&#33719;&#29992;&#25143;&#28857;&#20987;</a></div>
            <div style="text-align: right"><a class="NavigationArrow" href="parse-xml.html">&#35299;&#26512; XML</a>&nbsp;&#8594;
            </div>
            <hr style="clear:both">
            <div class="footer">
               <p class="copyright">&#29256;&#26435; &copy; 2005 Mark Pilgrim &middot; <a title="&#21457;&#36865;&#32473;&#25105;&#26377;&#20110;&#27492;&#20070;&#30340;&#21453;&#39304;&#24847;&#35265;" href="mailto:mark@diveintomark.org">mark@diveintomark.org</a> &middot; <a href="../license/gpl.html" title="GNU &#36890;&#29992;&#20844;&#20849;&#35768;&#21487;&#35777;">&#20351;&#29992;&#26465;&#27454;</a></p>
            </div>
         </div>
      </div>
   </body>
</html>